The use of computer technologies to transfer financial and other valuable information continues to increase. Because of the nature of these transfers, protecting the information in transit from disclosure to unauthorized parties is critical. Encryption has traditionally been used to provide security for these communications.
Whether or not encryption is employed, a transfer of data is conventionally achieved by breaking the data into blocks and transferring the blocks sequentially. The information in each block is typically the same size. Because the order and the size of such blocks can be easily determined, even when encrypted, an eavesdropper can gain valuable information regarding the content of the communication. More specifically, if known types of information exist within a block, the encryption key may be determined allowing the content of other blocks encrypted using the same key to be obtained.
The problem is exacerbated when there is a distribution of multiple copies of the same content. For example, a digital book delivery service distributes multiple copies of a digital book to customers. Each copy may be encrypted by a different key. Because an eavesdropper has access to known data (e.g. page one of the book), which is encrypted multiple times with different keys, the eavesdropper may be able to recover the key that was used to encrypt that data. The eavesdropper can then use that key to decrypt the rest of the data.
What is therefore needed is a system for securely transferring and storing data containing known types of information.